package com.test;

import java.util.List;

/**
 *
 * @author xiandafu
 *
 */
public abstract class RuleNode {
	public final static int MATCH = 2 ;
	public final static int PATH_MATCH = 1;
	public final static int NOT_MATCH = 0;
	
	protected   Action action = null;
	protected RuleNode parent = null;
	protected RuleNode nextRule = null;
	protected boolean forAll = false ;
	
	public abstract MatchResult howMatch(JsonKey key,Class type,Object value);
	
	
	
	public Action getAction() {
		return action;
	}
	public void setAction(Action action) {
		this.action = action;
	}
	public RuleNode getParent() {
		return parent;
	}
	public void setParent(RuleNode parent) {
		this.parent = parent;
	}

	public RuleNode getNextRule() {
		return nextRule;
	}

	public void setNextRule(RuleNode nextRule) {
		this.nextRule = nextRule;
	}
	
	
	
	
}
